package com.youlai.boot.system.service;

import com.youlai.boot.system.model.entity.ExamPaper;
import com.youlai.boot.system.model.form.ExamPaperForm;
import com.youlai.boot.system.model.query.ExamPaperQuery;
import com.youlai.boot.system.model.vo.ExamPaperVO;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 试卷管理服务类
 *
 * @author youlaitech
 * @since 2025-07-04 08:25
 */
public interface ExamPaperService extends IService<ExamPaper> {

    /**
     *试卷管理分页列表
     *
     * @return {@link IPage<ExamPaperVO>} 试卷管理分页列表
     */
    IPage<ExamPaperVO> getExamPaperPage(ExamPaperQuery queryParams);

    /**
     * 获取试卷管理表单数据
     *
     * @param id 试卷管理ID
     * @return 试卷管理表单数据
     */
     ExamPaperForm getExamPaperFormData(Long id);

    /**
     * 新增试卷管理
     *
     * @param formData 试卷管理表单对象
     * @return 是否新增成功
     */
    boolean saveExamPaper(ExamPaperForm formData);

    /**
     * 修改试卷管理
     *
     * @param id   试卷管理ID
     * @param formData 试卷管理表单对象
     * @return 是否修改成功
     */
    boolean updateExamPaper(Long id, ExamPaperForm formData);

    /**
     * 删除试卷管理
     *
     * @param ids 试卷管理ID，多个以英文逗号(,)分割
     * @return 是否删除成功
     */
    boolean deleteExamPapers(String ids);

	List<Map<String, Object>> getPagerList();

	IPage<ExamPaperVO> getExamUserPaperPage(ExamPaperQuery queryParams);

}
